home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Skunkware 5
/
Skunkware 5.iso
/
lib
/
indent.uem
< prev
next >
Wrap
Text File
|
1995-07-21
|
2KB
|
121 lines
; INDENT.CMD: In/undent region & reformat indented paragraph macros
; indent region
store-procedure indent
write-message "[Indenting region]"
set %endline $curline
set %endpos $cwline
exchange-point-and-mark
set $discmd FALSE
set-mark
set $discmd TRUE
!while &gre %endline $curline
beginning-of-line
realign-line ; handle-tab
previous-line
detab-line
; next-line
!endwhile
beginning-of-line
set $cwline %endpos
write-message "[Region indented]"
!endm
; undent region
store-procedure undent
write-message "[Undenting region]"
set %endline $curline
set %endpos $cwline
exchange-point-and-mark
set $discmd FALSE
set-mark
set $discmd TRUE
!while &gre %endline $curline
beginning-of-line
!if &gre $lwidth 0
-1 realign-line ; delete-next-character
previous-line
detab-line
!else
next-line
!endif
!endwhile
beginning-of-line
set $cwline %endpos
write-message "[Region undented]"
!endm
; reformat indented paragraph
store-procedure refin
write-message " [Fixing paragraph]"
set %endline $curline
set $discmd "FALSE"
kill-region
2 split-current-window
select-buffer "[temp]"
yank
end-of-file
set %endline $curline
beginning-of-file
!while &gre %endline $curline
beginning-of-line
!if &gre $lwidth 0
delete-next-character
!endif
next-line
!endwhile
&sub $fillcol 8 set-fill-column
1 goto-line
fill-paragraph
&add $fillcol 8 set-fill-column
end-of-file
set %endline $curline
beginning-of-file
!while &gre %endline $curline
beginning-of-line
handle-tab
next-line
!endwhile
beginning-of-file
set-mark
end-of-file
kill-region
unmark-buffer
delete-window
yank
delete-buffer "[temp]"
set $cwline %endpos
set $discmd "TRUE"
write-message " [Fixed paragraph]"
!endm
;+ Need to be able to look at count val in macro
;+ add another variable
set $discmd TRUE
bind-to-key execute-macro-indent ^X^I
bind-to-key execute-macro-undent ^XU
; testing
39 store-macro
write-message &cat &cat $lastkey " " &ascii "i"
!if &equal $lastkey &ascii "q"
write-message "matched q"
!endif
!endm
bind-to-key execute-macro-39 ^XQ